package com.real8.romemp.client.ui;

import com.google.gwt.user.client.ui.IsWidget;
import com.real8.romemp.client.place.ShipBuildingPlace.EMenuSelection;

public interface ShipBuildingView extends IsWidget {
	public interface Presenter {
		/**
		 * On an attempt to select a menu option
		 * 
		 * @param selection
		 */
		void onSelected(EMenuSelection selection);

		/**
		 * On an answer to the hire/fire question
		 */
		void onAnswer(int amount);
	}
	
	void setPresenter(Presenter presenter);
	
	/**
	 * Hide all individual elements
	 */
	void hideAll();

	/**
	 * Show menu with supplied data
	 * 
	 * @param shipsToBuild
	 * @param marinesWithoutShip
	 * @param merchantsWithoutShip
	 */
	void showMenu(int shipsToBuild, int marinesWithoutShip,
			int merchantsWithoutShip);

	/**
	 * Show build ship question corresponding to selected menu
	 * 
	 * @param selection
	 */
	void showQuestion(EMenuSelection selection);

	/**
	 * Show no more ships to build
	 */
	void showNoMoreShipsToBuild();
}
